package classes;

import java.awt.Point;

import interfaces.ICapteur;
import interfaces.IStrategy;

public class StrategyAtomique implements IStrategy {
	private ICapteur capteur;
	private int nbCanaux;
	private int nbGetValue;
	private Point value;

	public StrategyAtomique(ICapteur capteur){
		this.capteur=capteur;
		capteur.setStrategyText("Strategie: Atomique");
		nbGetValue=0;
		value=new Point(0, 0);
	}

	@Override
	public void traiterTick() {
		if(nbCanaux==nbGetValue){
			value.x++;
			capteur.setLabelText(value.x+"");
			nbCanaux=capteur.getNbCanaux();
			nbGetValue=0;
			capteur.updateCanaux();
		}
		else{
			System.out.println("Strategie Atomique: Un tick du capteur a ete ignore car tout les canaux ne sont pas a jour!");
		}

	}
	@Override
	public Point getValue() {
		nbGetValue++;
		return value;
	}

}
